execs().with_stdout("hello\n"));
assert_that(p.cargo("test"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] foo v0.5.0 ({})
-[RUNNING] target[..]foo-[..]
-
+[RUNNING] target[..]foo-[..]", p.url()))
+ .with_stdout("
running 1 test
test test_hello ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-", p.url())));
+"));
});
test!(cargo_test_release {
.file("bar/src/lib.rs", "pub fn bar() {}");
assert_that(p.cargo_process("test").arg("-v").arg("--release"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] bar v0.0.1 ({dir}/bar)
[RUNNING] [..] -C opt-level=3 [..]
[COMPILING] foo v0.1.0 ({dir})
[RUNNING] [..] -C opt-level=3 [..]
[RUNNING] [..] -C opt-level=3 [..]
[RUNNING] `[..]target[..]foo-[..]`
-
+[RUNNING] `[..]target[..]test-[..]`
+[DOCTEST] foo
+[RUNNING] `rustdoc --test [..]lib.rs[..]`", dir = p.url()))
+ .with_stdout("
running 1 test
test test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] `[..]target[..]test-[..]`
running 1 test
test test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
-[RUNNING] `rustdoc --test [..]lib.rs[..]`
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-", dir = p.url())));
+"));
});
test!(cargo_test_verbose {
"#);
assert_that(p.cargo_process("test").arg("-v").arg("hello"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] foo v0.5.0 ({url})
[RUNNING] `rustc src[..]foo.rs [..]`
-[RUNNING] `[..]target[..]foo-[..] hello`
-
+[RUNNING] `[..]target[..]foo-[..] hello`", url = p.url()))
+ .with_stdout("
running 1 test
test test_hello ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-", url = p.url())));
+"));
});
test!(many_similar_names {
");
assert_that(p.cargo_process("test"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] foo v0.0.1 ({})
[RUNNING] target[..]baz-[..]
-
+[RUNNING] target[..]foo[..]
+[DOCTEST] foo", p.url()))
+ .with_stdout("
running 1 test
test bin_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]foo[..]
running 1 test
test lib_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 1 test
test foo_0 ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-",
- p.url())))
+"))
});
test!(test_with_deep_lib_dep {
p2.build();
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] foo v0.0.1 ([..])
[COMPILING] bar v0.0.1 ({dir})
[RUNNING] target[..]
-
+[DOCTEST] bar", dir = p.url()))
+ .with_stdout("
running 1 test
test bar_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] bar
running 1 test
test bar_0 ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
});
test!(external_test_explicit {
"#);
assert_that(p.cargo_process("test"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] foo v0.0.1 ({})
[RUNNING] target[..]foo-[..]
-
+[RUNNING] target[..]test-[..]
+[DOCTEST] foo", p.url()))
+ .with_stdout("
running 1 test
test internal_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]test-[..]
running 1 test
test external_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- p.url())))
+"))
});
test!(external_test_implicit {
"#);
assert_that(p.cargo_process("test"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] foo v0.0.1 ({})
[RUNNING] target[..]external-[..]
-
+[RUNNING] target[..]foo-[..]
+[DOCTEST] foo", p.url()))
+ .with_stdout("
running 1 test
test external_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]foo-[..]
running 1 test
test internal_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-", p.url())))
+"))
});
test!(dont_run_examples {
assert_that(p.cargo_process("test").arg("bar"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] foo v0.0.1 ({dir})
[RUNNING] target[..]foo-[..]
-
+[DOCTEST] foo", dir = p.url()))
+ .with_stdout("
running 1 test
test bar ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
assert_that(p.cargo("test").arg("foo"),
execs().with_status(0)
");
assert_that(p.cargo_process("test"),
- execs().with_stdout(format!("\
+ execs().with_stderr(format!("\
[COMPILING] foo v0.0.1 ({})
[RUNNING] target[..]foo-[..]
-
+[RUNNING] target[..]foo-[..]
+[DOCTEST] foo", p.url()))
+ .with_stdout("
running 1 test
test [..] ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]foo-[..]
running 1 test
test [..] ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- p.url())))
+"))
});
test!(lib_with_standard_name {
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] syntax v0.0.1 ({dir})
[RUNNING] target[..]syntax-[..]
-
+[RUNNING] target[..]test-[..]
+[DOCTEST] syntax", dir = p.url()))
+ .with_stdout("
running 1 test
test foo_test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]test-[..]
running 1 test
test test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] syntax
running 1 test
test foo_0 ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-", dir = p.url())));
+"));
});
test!(lib_with_standard_name2 {
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] syntax v0.0.1 ({dir})
-[RUNNING] target[..]syntax-[..]
-
+[RUNNING] target[..]syntax-[..]", dir = p.url()))
+ .with_stdout("
running 1 test
test test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
});
test!(lib_without_name {
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] syntax v0.0.1 ({dir})
-[RUNNING] target[..]syntax-[..]
-
+[RUNNING] target[..]syntax-[..]", dir = p.url()))
+ .with_stdout("
running 1 test
test test ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-", dir = p.url())));
+"));
});
test!(bin_without_name {
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] bar v0.0.1 ({dir}/bar)
[COMPILING] foo v0.0.1 ({dir})
[RUNNING] target[..]foo-[..]
-
+[RUNNING] target[..]test-[..]", dir = p.url()))
+ .with_stdout("
running 1 test
test foo ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]test-[..]
running 1 test
test foo ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
p.root().move_into_the_past().unwrap();
assert_that(p.cargo("test"),
execs().with_status(0)
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] foo v0.0.1 ({dir})
[RUNNING] target[..]foo-[..]
-
+[DOCTEST] foo", dir = p.url()))
+ .with_stdout("
running 1 test
test foo ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
assert_that(p.cargo("test"),
execs().with_status(0)
assert_that(p.cargo_process("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] foo v0.0.1 ({dir})
[RUNNING] target[..]foo-[..]
-
+[DOCTEST] foo", dir = p.url()))
+ .with_stdout("
running 1 test
test foo ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] foo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
assert_that(p.cargo("build"),
execs().with_status(0)
.file("src/bin1.rs", "#[test] fn test1() { }")
.file("src/bin2.rs", "#[test] fn test2() { }");
- let expected_stdout = format!("\
+ assert_that(prj.cargo_process("test").arg("--bin").arg("bin2"),
+ execs().with_status(0)
+ .with_stderr(format!("\
[COMPILING] foo v0.0.1 ({dir})
-[RUNNING] target[..]bin2-[..]
-
+[RUNNING] target[..]bin2-[..]", dir = prj.url()))
+ .with_stdout("
running 1 test
test test2 ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = prj.url());
-
- assert_that(prj.cargo_process("test").arg("--bin").arg("bin2"),
- execs().with_status(0).with_stdout(&expected_stdout));
+"));
});
test!(test_run_specific_test_target {
.file("tests/a.rs", "#[test] fn test_a() { }")
.file("tests/b.rs", "#[test] fn test_b() { }");
- let expected_stdout = format!("\
+ assert_that(prj.cargo_process("test").arg("--test").arg("b"),
+ execs().with_status(0)
+ .with_stderr(format!("\
[COMPILING] foo v0.0.1 ({dir})
-[RUNNING] target[..]b-[..]
-
+[RUNNING] target[..]b-[..]", dir = prj.url()))
+ .with_stdout("
running 1 test
test test_b ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = prj.url());
-
- assert_that(prj.cargo_process("test").arg("--test").arg("b"),
- execs().with_status(0).with_stdout(&expected_stdout));
+"));
});
test!(test_no_harness {
println!("d1");
assert_that(p.cargo("test").arg("-p").arg("d1"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] d1 v0.0.1 ({dir}/d1)
[RUNNING] target[..]d1-[..]
-
+[RUNNING] target[..]d1-[..]", dir = p.url()))
+ .with_stdout("
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]d1-[..]
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
println!("d2");
assert_that(p.cargo("test").arg("-p").arg("d2"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] d2 v0.0.1 ({dir}/d2)
[RUNNING] target[..]d2-[..]
-
+[RUNNING] target[..]d2-[..]", dir = p.url()))
+ .with_stdout("
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-[RUNNING] target[..]d2-[..]
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
println!("whole");
assert_that(p.cargo("test"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] foo v0.0.1 ({dir})
-[RUNNING] target[..]foo-[..]
-
+[RUNNING] target[..]foo-[..]", dir = p.url()))
+ .with_stdout("
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-",
- dir = p.url())));
+"));
});
test!(almost_cyclic_but_not_quite {
assert_that(p.cargo("test").arg("-p").arg("d1"),
execs().with_status(0)
- .with_stdout(&format!("\
+ .with_stderr(&format!("\
[COMPILING] d1 v0.0.1 ({dir}/d1)
[RUNNING] target[..]deps[..]d1[..]
-
+[DOCTEST] d1", dir = p.url()))
+ .with_stdout("
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-[DOCTEST] d1
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured
-", dir = p.url())));
+"));
});
test!(example_bin_same_name {